\section{fsm\+\_\+coe.\+h File Reference}
\label{fsm__coe_8h}\index{fsm\+\_\+coe.\+h@{fsm\+\_\+coe.\+h}}


Ether\+C\+AT CoE state machines.  


\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ ec\+\_\+fsm\+\_\+coe}
\begin{DoxyCompactList}\small\item\em Finite state machines for the C\+A\+Nopen over Ether\+C\+AT protocol. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef struct \textbf{ ec\+\_\+fsm\+\_\+coe} \textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+t}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\label{fsm__coe_8h_a46bb4bddfa71774a7fb147714f9d8d21}} 
void \textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+init} (\textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+t} $\ast$)
\begin{DoxyCompactList}\small\item\em Constructor. \end{DoxyCompactList}\item 
\mbox{\label{fsm__coe_8h_af9310f50cdc699177ed79c171f61ed5a}} 
void \textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+clear} (\textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+t} $\ast$)
\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
\mbox{\label{fsm__coe_8h_abad3335f40408013f0431bc7caa9e204}} 
void \textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+dictionary} (\textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+t} $\ast$, \textbf{ ec\+\_\+slave\+\_\+t} $\ast$)
\begin{DoxyCompactList}\small\item\em Starts reading a slaves\textquotesingle{} S\+DO dictionary. \end{DoxyCompactList}\item 
\mbox{\label{fsm__coe_8h_a4cb016d332f5f840afcebfb39e24d7a7}} 
void \textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+transfer} (\textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+t} $\ast$, \textbf{ ec\+\_\+slave\+\_\+t} $\ast$, \textbf{ ec\+\_\+sdo\+\_\+request\+\_\+t} $\ast$)
\begin{DoxyCompactList}\small\item\em Starts to transfer an S\+DO to/from a slave. \end{DoxyCompactList}\item 
int \textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+exec} (\textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+t} $\ast$, \textbf{ ec\+\_\+datagram\+\_\+t} $\ast$)
\begin{DoxyCompactList}\small\item\em Executes the current state of the state machine. \end{DoxyCompactList}\item 
int \textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+success} (const \textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+t} $\ast$)
\begin{DoxyCompactList}\small\item\em Returns, if the state machine terminated with success. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Ether\+C\+AT CoE state machines. 



\subsection{Typedef Documentation}
\mbox{\label{fsm__coe_8h_a734dfc127f55aed3a16529febddd1771}} 
\index{fsm\+\_\+coe.\+h@{fsm\+\_\+coe.\+h}!ec\+\_\+fsm\+\_\+coe\+\_\+t@{ec\+\_\+fsm\+\_\+coe\+\_\+t}}
\index{ec\+\_\+fsm\+\_\+coe\+\_\+t@{ec\+\_\+fsm\+\_\+coe\+\_\+t}!fsm\+\_\+coe.\+h@{fsm\+\_\+coe.\+h}}
\subsubsection{ec\+\_\+fsm\+\_\+coe\+\_\+t}
{\footnotesize\ttfamily typedef struct \textbf{ ec\+\_\+fsm\+\_\+coe} \textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+t}}

\begin{DoxySeeAlso}{See also}
\doxyref{ec\+\_\+fsm\+\_\+coe}{p.}{structec__fsm__coe} 
\end{DoxySeeAlso}


Definition at line 48 of file fsm\+\_\+coe.\+h.



\subsection{Function Documentation}
\mbox{\label{fsm__coe_8h_a1a9eedd54d43fc5091e24a13ef1ece81}} 
\index{fsm\+\_\+coe.\+h@{fsm\+\_\+coe.\+h}!ec\+\_\+fsm\+\_\+coe\+\_\+exec@{ec\+\_\+fsm\+\_\+coe\+\_\+exec}}
\index{ec\+\_\+fsm\+\_\+coe\+\_\+exec@{ec\+\_\+fsm\+\_\+coe\+\_\+exec}!fsm\+\_\+coe.\+h@{fsm\+\_\+coe.\+h}}
\subsubsection{ec\+\_\+fsm\+\_\+coe\+\_\+exec()}
{\footnotesize\ttfamily int ec\+\_\+fsm\+\_\+coe\+\_\+exec (\begin{DoxyParamCaption}\item[{\textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+t} $\ast$}]{fsm,  }\item[{\textbf{ ec\+\_\+datagram\+\_\+t} $\ast$}]{datagram }\end{DoxyParamCaption})}



Executes the current state of the state machine. 

\begin{DoxyReturn}{Returns}
1 if the datagram was used, else 0. 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em fsm} & Finite state machine. \\
\hline
{\em datagram} & Datagram to use. \\
\hline
\end{DoxyParams}


Definition at line 228 of file fsm\+\_\+coe.\+c.

\mbox{\label{fsm__coe_8h_a29f02c39679e827b0f92dc776c8914d4}} 
\index{fsm\+\_\+coe.\+h@{fsm\+\_\+coe.\+h}!ec\+\_\+fsm\+\_\+coe\+\_\+success@{ec\+\_\+fsm\+\_\+coe\+\_\+success}}
\index{ec\+\_\+fsm\+\_\+coe\+\_\+success@{ec\+\_\+fsm\+\_\+coe\+\_\+success}!fsm\+\_\+coe.\+h@{fsm\+\_\+coe.\+h}}
\subsubsection{ec\+\_\+fsm\+\_\+coe\+\_\+success()}
{\footnotesize\ttfamily int ec\+\_\+fsm\+\_\+coe\+\_\+success (\begin{DoxyParamCaption}\item[{const \textbf{ ec\+\_\+fsm\+\_\+coe\+\_\+t} $\ast$}]{fsm }\end{DoxyParamCaption})}



Returns, if the state machine terminated with success. 

\begin{DoxyReturn}{Returns}
non-\/zero if successful. 
\end{DoxyReturn}

\begin{DoxyParams}{Parameters}
{\em fsm} & Finite state machine \\
\hline
\end{DoxyParams}


Definition at line 262 of file fsm\+\_\+coe.\+c.

